Skip to content

Introduction of Netapp Ontap iSCSI pool type - #14192

Open
piyush5netapp wants to merge 8 commits into
apache:mainfrom
NetApp:ontap-new-iscsi-pool-type
Open

piyush5netapp wants to merge 8 commits into
apache:mainfrom
NetApp:ontap-new-iscsi-pool-type

Conversation

@piyush5netapp

@piyush5netapp piyush5netapp commented Sep 17, 2026 •

Copy link
Copy Markdown
Contributor

Description

This PR does covers below mentioned things

  1. Introduces the new pool type "OntapiSCSI" for Netapp ONTAP provider for iSCSI usecase.
  2. Introduction of new OntapIscsiStorageAdaptor for new pool type OntapiSCSI.
  3. Removed all the changes we did in common IscsiAdmStorageAdaptor for separation of concern and less blast radius.
  4. Enables vm snapshot UI icon for VM which is in Stopped state and disk is residing on OntapiSCSI pool.
  5. Ontap driver start claiming cross cluster and within cluster migration path.
  6. Upgrade sql changes for the same.

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)
  • Build/CI
  • Test (unit or integration test code)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Major
  • Minor

Bug Severity

  • BLOCKER
  • Critical
  • Major
  • Minor
  • Trivial

Screenshots (if appropriate):

How Has This Been Tested?

All the VM, volume workflows has been tested for Netapp ONTAP provider. Compute only migration of a Live VM has been tested.

Upgrade testing results:
Storage pools before
id name uuid pool_type scope path host_address port
1 cstack37.rtp.openenglab.netapp.com-local-26314b73 26314b73-6271-485a-b468-6d1591ca5438 Filesystem HOST /var/lib/libvirt/images 10.193.56.46 0
2 PM1 fe64543f-8ef0-3cc4-ba33-748a08497e4d NetworkFilesystem CLUSTER /export/primary 10.193.56.46 2049
3 cs_SAN1_423 9b339bfb-24d0-426f-8985-ac5390b7ae8a Iscsi CLUSTER iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3 10.196.37.157 3260
4 cs_NFS1_423 5fa73067-a701-4f47-9c38-843d6290af8a NetworkFilesystem CLUSTER /cs_NFS1_423 10.196.37.149 2049

Volumes before

id name volume_type state path pool_type pool_name
1 ROOT-1 ROOT Ready 3725f3ad-a19e-46be-b55f-d8912164ab2c Filesystem cstack37.rtp.openenglab.netapp.com-local-26314b73
2 ROOT-3 ROOT Ready 63ce314d-c174-42ce-976c-53a3f095ef9c Filesystem cstack37.rtp.openenglab.netapp.com-local-26314b73
5 ROOT-5 ROOT Ready b56bbff3-b9ba-47fd-83a0-be5ce073a2bd Filesystem cstack37.rtp.openenglab.netapp.com-local-26314b73
6 ROOT-6 ROOT Ready /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/0 Iscsi cs_SAN1_423
7 DATA-6 DATADISK Ready /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/1 Iscsi cs_SAN1_423
8 ROOT-7 ROOT Ready 6eb5387e-079a-48ee-bc8c-8a16c4e7f811 NetworkFilesystem cs_NFS1_423
9 DATA-7 DATADISK Ready 4f678975-5f23-4759-8a03-7ed5edfd422a NetworkFilesystem cs_NFS1_423
10 ROOT-8 ROOT Ready 49ebd17a-a59e-4508-8e71-31b533478a06 NetworkFilesystem PM1
11 DATA-8 DATADISK Ready 280512d8-41e8-4661-8007-1edd393ec0ff NetworkFilesystem PM1
12 ROOT-9 ROOT Ready 043ce7b1-cf32-4230-91b0-16f24955c3a5 NetworkFilesystem cs_NFS1_423
13 DATA-9 DATADISK Ready /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/2 Iscsi cs_SAN1_423
14 ROOT-10 ROOT Ready 74bb224d-a3e0-45f9-b2ef-003b672548bf NetworkFilesystem PM1
15 DATA-10 DATADISK Ready /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/3 Iscsi cs_SAN1_423

Storage pools after (iSCSI pool must be OntapiSCSI)

id name pool_type scope storage_provider_name
1 cstack37.rtp.openenglab.netapp.com-local-26314b73 Filesystem HOST DefaultPrimary
2 PM1 NetworkFilesystem CLUSTER DefaultPrimary
3 cs_SAN1_423 OntapiSCSI CLUSTER NetApp ONTAP
4 cs_NFS1_423 NetworkFilesystem CLUSTER NetApp ONTAP

Volumes after (iSCSI vols must be OntapiSCSI + RAW)

id name volume_type state v_pool_type format path sp_pool_type pool_name
1 ROOT-1 ROOT Ready Filesystem QCOW2 3725f3ad-a19e-46be-b55f-d8912164ab2c Filesystem cstack37.rtp.openenglab.netapp.com-local-26314b73
2 ROOT-3 ROOT Ready Filesystem QCOW2 63ce314d-c174-42ce-976c-53a3f095ef9c Filesystem cstack37.rtp.openenglab.netapp.com-local-26314b73
5 ROOT-5 ROOT Ready Filesystem QCOW2 b56bbff3-b9ba-47fd-83a0-be5ce073a2bd Filesystem cstack37.rtp.openenglab.netapp.com-local-26314b73
6 ROOT-6 ROOT Ready OntapiSCSI RAW /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c67 OntapiSCSI cs_SAN1_423
7 DATA-6 DATADISK Ready OntapiSCSI RAW /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c68 OntapiSCSI cs_SAN1_423
8 ROOT-7 ROOT Ready NetworkFilesystem QCOW2 6eb5387e-079a-48ee-bc8c-8a16c4e7f811 NetworkFilesystem cs_NFS1_423
9 DATA-7 DATADISK Ready NetworkFilesystem QCOW2 4f678975-5f23-4759-8a03-7ed5edfd422a NetworkFilesystem cs_NFS1_423
10 ROOT-8 ROOT Ready NetworkFilesystem QCOW2 49ebd17a-a59e-4508-8e71-31b533478a06 NetworkFilesystem PM1
11 DATA-8 DATADISK Ready NetworkFilesystem QCOW2 280512d8-41e8-4661-8007-1edd393ec0ff NetworkFilesystem PM1
12 ROOT-9 ROOT Ready NetworkFilesystem QCOW2 043ce7b1-cf32-4230-91b0-16f24955c3a5 NetworkFilesystem cs_NFS1_423
13 DATA-9 DATADISK Ready OntapiSCSI RAW /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c69 OntapiSCSI cs_SAN1_423
14 ROOT-10 ROOT Ready NetworkFilesystem QCOW2 74bb224d-a3e0-45f9-b2ef-003b672548bf NetworkFilesystem PM1
15 DATA-10 DATADISK Ready OntapiSCSI RAW /iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c6a OntapiSCSI cs_SAN1_423

How did you try to break this feature and the system with this change?

@piyush5netapp
piyush5netapp marked this pull request as ready for review September 17, 2026 11:09
@winterhazel winterhazel added this to the 24.0 milestone Sep 19, 2026
@piyush5netapp

Copy link
Copy Markdown
Contributor Author

@winterhazel @weizhouapache I have raised this PR for the introduction of new iscsi pool type for Netapp ONTAP. I remember you guys were also of the same opinion for a new pool type for Netapp ONTAP as part of some previous PR.. Please have a look at this PR and share your feedback.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Existing pools can break after upgrade, unsupported format validation can orphan LUNs, and template creation still rejects RAW ONTAP iSCSI volumes.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 2 High severity · 1 Medium severity

Open (3)
What changed in this PR

Adds OntapiSCSI as a first-class ONTAP iSCSI storage-pool type across management, KVM agent, and data-motion paths.

Changes:

  • Adds the new pool enum and lifecycle mapping.
  • Adds KVM adaptor and RAW image-format handling.
  • Extends validation and tests for ONTAP iSCSI behavior.
File Description
api/​src/​main/​java/​com/​cloud/​storage/​Storage.java Defines OntapiSCSI.
server/​src/​main/​java/​com/​cloud/​api/​ApiDBUtils.java Recognizes RAW ONTAP images.
plugins/​storage/​volume/​ontap/​src/​main/​java/​.../​OntapPrimaryDatastoreLifecycle.java Maps iSCSI pools to the new type.
plugins/​storage/​volume/​ontap/​src/​main/​java/​.../​OntapPrimaryDatastoreDriver.java Validates protocols and assigns formats.
plugins/​hypervisors/​kvm/​src/​main/​java/​.../​OntapIscsiStorageAdaptor.java Registers the KVM adaptor.
plugins/​hypervisors/​kvm/​src/​main/​java/​.../​KVMStorageProcessor.java Handles RAW ONTAP pools.
engine/​storage/​datamotion/​src/​main/​java/​.../​StorageSystemDataMotionStrategy.java Allows RAW ONTAP migration formats.
api/​src/​test/​java/​com/​cloud/​storage/​StorageTest.java Tests pool capabilities.
plugins/​storage/​volume/​ontap/​src/​test/​java/​.../​OntapPrimaryDatastoreLifecycleTest.java Tests pool initialization.
plugins/​storage/​volume/​ontap/​src/​test/​java/​.../​OntapPrimaryDatastoreDriverTest.java Tests format and validation behavior.
plugins/​hypervisors/​kvm/​src/​test/​java/​.../​OntapIscsiStorageAdaptorTest.java Tests adaptor discovery and RAW behavior.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

!(imageFormat == ImageFormat.RAW && (StoragePoolType.PowerFlex == poolType ||
StoragePoolType.FiberChannel == poolType))) {
throw new CloudRuntimeException(String.format("Only the following image types are currently supported: %s, %s, %s, %s (for PowerFlex and FiberChannel)",
StoragePoolType.FiberChannel == poolType || StoragePoolType.OntapiSCSI == poolType))) {
@codecov

codecov Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 20.23576% with 406 lines in your changes missing coverage. Please review.
✅ Project coverage is 20.66%. Comparing base (e9af62c) to head (5b4115d).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
...pervisor/kvm/storage/OntapIscsiStorageAdaptor.java 14.67% 339 Missing and 4 partials ⚠️
...cloudstack/storage/service/UnifiedSANStrategy.java 0.00% 23 Missing ⚠️
...ck/storage/driver/OntapPrimaryDatastoreDriver.java 65.07% 15 Missing and 7 partials ⚠️
...hypervisor/kvm/storage/IscsiAdmStorageAdaptor.java 0.00% 13 Missing ⚠️
...torage/motion/StorageSystemDataMotionStrategy.java 0.00% 2 Missing ⚠️
...ud/hypervisor/kvm/storage/KVMStorageProcessor.java 0.00% 2 Missing ⚠️
server/src/main/java/com/cloud/api/ApiDBUtils.java 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##               main   #14192    +/-   ##
==========================================
  Coverage     20.66%   20.66%            
- Complexity    21723    21757    +34     
==========================================
  Files          6492     6493     +1     
  Lines        590728   591129   +401     
  Branches      72448    72508    +60     
==========================================
+ Hits         122054   122183   +129     
- Misses       455404   455662   +258     
- Partials      13270    13284    +14     
Flag Coverage Δ
uitests 3.74% <ø> (ø)
unittests 21.98% <20.23%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@piyush5netapp

Copy link
Copy Markdown
Contributor Author

Moving this back to draft PR as some more modification has been done on this. Will update and open for review again in few days.

@winterhazel
winterhazel self-requested a review October 8, 2026 03:14
sathvikaragi and others added 2 commits October 14, 2026 22:05
#115)

### Description

enabling VM snapshot for ISCSI stopped vm's in UI using ontapiSCSI pool
type

This PR...
<!--- Describe your changes in DETAIL - And how has behaviour
functionally changed. -->

<!-- For new features, provide link to FS, dev ML discussion etc. -->
<!-- In case of bug fix, the expected and actual behaviours, steps to
reproduce. -->

<!-- When "Fixes: #<id>" is specified, the issue/PR will automatically
be closed when this PR gets merged -->
<!-- For addressing multiple issues/PRs, use multiple "Fixes: #<id>" -->
<!-- Fixes: # -->

<!---
*******************************************************************************
-->
<!--- NOTE: AUTOMATION USES THE DESCRIPTIONS TO SET LABELS AND PRODUCE
DOCUMENTATION. -->
<!--- PLEASE PUT AN 'X' in only **ONE** box -->
<!---
*******************************************************************************
-->

### Types of changes

- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] New feature (non-breaking change which adds functionality)
- [X] Bug fix (non-breaking change which fixes an issue)
- [ ] Enhancement (improves an existing feature and functionality)
- [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
- [ ] Build/CI
- [ ] Test (unit or integration test code)

### Feature/Enhancement Scale or Bug Severity

#### Feature/Enhancement Scale

- [ ] Major
- [ ] Minor

#### Bug Severity

- [ ] BLOCKER
- [ ] Critical
- [ ] Major
- [X] Minor
- [ ] Trivial

### Screenshots (if appropriate):

### How Has This Been Tested?

1) created a ISCSI vm and stopped IT 
2) Took a snapshot in stopped state 
3) powered On the VM then created a file on it and write in to it.
4) Powered of the vm and reverted to snapshot that was taken when it was
in stopped state
5) after revert verified that file and contents are gone

before reverting:
<img width="724" height="159" alt="Screenshot 2026-10-08 at 12 03 39 PM"
src="https://github.com/user-attachments/assets/3f5861d2-fde9-4775-9f07-2a778d16dd03"
/>

after reverting:
<img width="825" height="475" alt="Screenshot 2026-10-08 at 12 02 09 PM"
src="https://github.com/user-attachments/assets/b515bc19-e582-4850-90c6-e7628cfc9486"
/>

<!-- Please describe in detail how you tested your changes. -->
<!-- Include details of your testing environment, and the tests you ran
to -->

#### How did you try to break this feature and the system with this
change?

<!-- see how your change affects other areas of the code, etc. -->

<!-- Please read the
[CONTRIBUTING](https://github.com/apache/cloudstack/blob/main/CONTRIBUTING.md)
document -->
…r serial number and by-id instead of by-path
@piyush5netapp

piyush5netapp commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor Author

Moving this back to draft PR as some more modification has been done on this. Will update and open for review again in few days.

@winterhazel @weizhouapache @nvazquez This PR is ready for review now.

Srivastava, Piyush and others added 2 commits October 22, 2026 12:58
…o OntapiSCSI (#128)

### Description

This PR...
<!--- Describe your changes in DETAIL - And how has behaviour
functionally changed. -->

<!-- For new features, provide link to FS, dev ML discussion etc. -->
<!-- In case of bug fix, the expected and actual behaviours, steps to
reproduce. -->

<!-- When "Fixes: #<id>" is specified, the issue/PR will automatically
be closed when this PR gets merged -->
<!-- For addressing multiple issues/PRs, use multiple "Fixes: #<id>" -->
<!-- Fixes: # -->

<!---
*******************************************************************************
-->
<!--- NOTE: AUTOMATION USES THE DESCRIPTIONS TO SET LABELS AND PRODUCE
DOCUMENTATION. -->
<!--- PLEASE PUT AN 'X' in only **ONE** box -->
<!---
*******************************************************************************
-->

### Types of changes

- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] Enhancement (improves an existing feature and functionality)
- [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
- [ ] Build/CI
- [ ] Test (unit or integration test code)

### Feature/Enhancement Scale or Bug Severity

#### Feature/Enhancement Scale

- [ ] Major
- [ ] Minor

#### Bug Severity

- [ ] BLOCKER
- [ ] Critical
- [ ] Major
- [ ] Minor
- [ ] Trivial

### Screenshots (if appropriate):

### How Has This Been Tested?
Storage pools before
id	name	uuid	pool_type	scope	path	host_address	port
1 cstack37.rtp.openenglab.netapp.com-local-26314b73
26314b73-6271-485a-b468-6d1591ca5438 Filesystem HOST
/var/lib/libvirt/images 10.193.56.46 0
2 PM1 fe64543f-8ef0-3cc4-ba33-748a08497e4d NetworkFilesystem CLUSTER
/export/primary 10.193.56.46 2049
3 cs_SAN1_423 9b339bfb-24d0-426f-8985-ac5390b7ae8a Iscsi CLUSTER
iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3
10.196.37.157 3260
4 cs_NFS1_423 5fa73067-a701-4f47-9c38-843d6290af8a NetworkFilesystem
CLUSTER /cs_NFS1_423 10.196.37.149 2049

Volumes before
id	name	volume_type	state	path	pool_type	pool_name
1 ROOT-1 ROOT Ready 3725f3ad-a19e-46be-b55f-d8912164ab2c Filesystem
cstack37.rtp.openenglab.netapp.com-local-26314b73
2 ROOT-3 ROOT Ready 63ce314d-c174-42ce-976c-53a3f095ef9c Filesystem
cstack37.rtp.openenglab.netapp.com-local-26314b73
5 ROOT-5 ROOT Ready b56bbff3-b9ba-47fd-83a0-be5ce073a2bd Filesystem
cstack37.rtp.openenglab.netapp.com-local-26314b73
6 ROOT-6 ROOT Ready
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/0 Iscsi
cs_SAN1_423
7 DATA-6 DATADISK Ready
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/1 Iscsi
cs_SAN1_423
8 ROOT-7 ROOT Ready 6eb5387e-079a-48ee-bc8c-8a16c4e7f811
NetworkFilesystem cs_NFS1_423
9 DATA-7 DATADISK Ready 4f678975-5f23-4759-8a03-7ed5edfd422a
NetworkFilesystem cs_NFS1_423
10 ROOT-8 ROOT Ready 49ebd17a-a59e-4508-8e71-31b533478a06
NetworkFilesystem PM1
11 DATA-8 DATADISK Ready 280512d8-41e8-4661-8007-1edd393ec0ff
NetworkFilesystem PM1
12 ROOT-9 ROOT Ready 043ce7b1-cf32-4230-91b0-16f24955c3a5
NetworkFilesystem cs_NFS1_423
13 DATA-9 DATADISK Ready
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/2 Iscsi
cs_SAN1_423
14 ROOT-10 ROOT Ready 74bb224d-a3e0-45f9-b2ef-003b672548bf
NetworkFilesystem PM1
15 DATA-10 DATADISK Ready
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/3 Iscsi
cs_SAN1_423

Volume_details before
volume_id	name	value
3	lun.name	/vol/cs_SAN1_423/ROOT_4
3	lun.uuid	21c4eea8-1763-4214-b925-d127c13c2176
6	lun.name	/vol/cs_SAN1_423/ROOT_6
6	lun.uuid	42aa41e2-98f4-48bf-a6f0-11b1c446a3c7
7	lun.name	/vol/cs_SAN1_423/DATA_6
7	lun.uuid	69b04101-92e1-4a34-8866-26306f3c99dd
13	lun.name	/vol/cs_SAN1_423/DATA_9
13	lun.uuid	e1ff542c-0b6a-475f-b54f-2e334ab33e88
15	lun.name	/vol/cs_SAN1_423/DATA_10
15	lun.uuid	1f921951-c004-4c31-a8f8-7cec346aa34a



Version gate + upgrade class fired (from MS log)
2026-10-15 17:32:36,360 INFO [c.c.u.DatabaseUpgradeChecker] (main:[])
(logid:) DB version = 4.23.0.0 Code Version = 24.0.0
2026-10-15 17:32:36,837 DEBUG [c.c.u.DatabaseUpgradeChecker] (main:[])
(logid:) Running upgrade Upgrade42300to2400 to upgrade from
4.23.0.0-24.0.0 to 24.0.0
2026-10-15 17:32:36,855 INFO [c.c.u.DatabaseUpgradeChecker] (main:[])
(logid:) Cleanup upgrade Upgrade42300to24000 to upgrade from
4.23.0.0-24.0.0 to 24.0.0
2026-10-15 17:32:36,856 DEBUG [c.c.u.DatabaseUpgradeChecker] (main:[])
(logid:) Cleanup script Upgrade42300to2400 is executed successfully
2026-10-15 17:32:38,122 DEBUG [c.c.u.d.Upgrade42300to24000] (main:[])
(logid:) Updating System Vm template IDs

DB version after
id	version	updated	step
53	24.0.0	2026-10-15 12:02:36	Complete
52	4.23.0.0	2026-09-23 16:58:36	Complete
51	4.22.1.0	2026-09-23 16:58:30	Complete
50	4.22.0.0	2026-09-23 16:58:29	Complete
49	4.21.0.0	2026-09-23 16:58:28	Complete

Storage pools after (iSCSI pool must be OntapiSCSI)
id	name	pool_type	scope	storage_provider_name
1 cstack37.rtp.openenglab.netapp.com-local-26314b73 Filesystem HOST
DefaultPrimary
2	PM1	NetworkFilesystem	CLUSTER	DefaultPrimary
3	cs_SAN1_423	OntapiSCSI	CLUSTER	NetApp ONTAP
4	cs_NFS1_423	NetworkFilesystem	CLUSTER	NetApp ONTAP

Volumes after (iSCSI vols must be OntapiSCSI + RAW)
id	name	volume_type	state	v_pool_type	format	path	sp_pool_type	pool_name
1 ROOT-1 ROOT Ready Filesystem QCOW2
3725f3ad-a19e-46be-b55f-d8912164ab2c Filesystem
cstack37.rtp.openenglab.netapp.com-local-26314b73
2 ROOT-3 ROOT Ready Filesystem QCOW2
63ce314d-c174-42ce-976c-53a3f095ef9c Filesystem
cstack37.rtp.openenglab.netapp.com-local-26314b73
5 ROOT-5 ROOT Ready Filesystem QCOW2
b56bbff3-b9ba-47fd-83a0-be5ce073a2bd Filesystem
cstack37.rtp.openenglab.netapp.com-local-26314b73
6 ROOT-6 ROOT Ready OntapiSCSI RAW
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c67
OntapiSCSI cs_SAN1_423
7 DATA-6 DATADISK Ready OntapiSCSI RAW
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c68
OntapiSCSI cs_SAN1_423
8 ROOT-7 ROOT Ready NetworkFilesystem QCOW2
6eb5387e-079a-48ee-bc8c-8a16c4e7f811 NetworkFilesystem cs_NFS1_423
9 DATA-7 DATADISK Ready NetworkFilesystem QCOW2
4f678975-5f23-4759-8a03-7ed5edfd422a NetworkFilesystem cs_NFS1_423
10 ROOT-8 ROOT Ready NetworkFilesystem QCOW2
49ebd17a-a59e-4508-8e71-31b533478a06 NetworkFilesystem PM1
11 DATA-8 DATADISK Ready NetworkFilesystem QCOW2
280512d8-41e8-4661-8007-1edd393ec0ff NetworkFilesystem PM1
12 ROOT-9 ROOT Ready NetworkFilesystem QCOW2
043ce7b1-cf32-4230-91b0-16f24955c3a5 NetworkFilesystem cs_NFS1_423
13 DATA-9 DATADISK Ready OntapiSCSI RAW
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c69
OntapiSCSI cs_SAN1_423
14 ROOT-10 ROOT Ready NetworkFilesystem QCOW2
74bb224d-a3e0-45f9-b2ef-003b672548bf NetworkFilesystem PM1
15 DATA-10 DATADISK Ready OntapiSCSI RAW
/iqn.1992-08.com.netapp:sn.45048fd9b65111f1b106005056bd83cf:vs.3/600a098078304d2d383f2f6b45734c6a
OntapiSCSI cs_SAN1_423

Volume_details after (lun.* preserved + new lun.serial_number)
volume_id	name	value
3	lun.name	/vol/cs_SAN1_423/ROOT_4
3	lun.uuid	21c4eea8-1763-4214-b925-d127c13c2176
6	lun.name	/vol/cs_SAN1_423/ROOT_6
6	lun.serial_number	x0M-8?/kEsLg
6	lun.uuid	42aa41e2-98f4-48bf-a6f0-11b1c446a3c7
7	lun.name	/vol/cs_SAN1_423/DATA_6
7	lun.serial_number	x0M-8?/kEsLh
7	lun.uuid	69b04101-92e1-4a34-8866-26306f3c99dd
13	lun.name	/vol/cs_SAN1_423/DATA_9
13	lun.serial_number	x0M-8?/kEsLi
13	lun.uuid	e1ff542c-0b6a-475f-b54f-2e334ab33e88
15	lun.name	/vol/cs_SAN1_423/DATA_10
15	lun.serial_number	x0M-8?/kEsLj
15	lun.uuid	1f921951-c004-4c31-a8f8-7cec346aa34a

<!-- Please describe in detail how you tested your changes. -->
<!-- Include details of your testing environment, and the tests you ran
to -->

#### How did you try to break this feature and the system with this
change?

<!-- see how your change affects other areas of the code, etc. -->

<!-- Please read the
[CONTRIBUTING](https://github.com/apache/cloudstack/blob/main/CONTRIBUTING.md)
document -->

---------

Co-authored-by: Srivastava, Piyush <Piyush.Srivastava@netapp.com>
@piyush5netapp

Copy link
Copy Markdown
Contributor Author

Moving this back to draft PR as some more modification has been done on this. Will update and open for review again in few days.

@winterhazel @weizhouapache @nvazquez This PR is ready for review now.
Hi Guys, Could you please review the changes, it would be great to get a feedback on this asap to accommodate the changes if any.

@DaanHoogland

Copy link
Copy Markdown
Contributor

@blueorangutan package

@blueorangutan

Copy link
Copy Markdown

@DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan

Copy link
Copy Markdown

Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 19737

@github-actions

Copy link
Copy Markdown

This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.

@blueorangutan

Copy link
Copy Markdown

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 19758

@DaanHoogland

Copy link
Copy Markdown
Contributor

@Damans227 @winterhazel , can you have a look?

@rajiv-jain-netapp

rajiv-jain-netapp commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

@winterhazel @nvazquez @DaanHoogland can we prioritize this review? merge can takes place once #13897 can be merged

@DaanHoogland

Copy link
Copy Markdown
Contributor

@winterhazel @nvazquez @DaanHoogland can we prioritize this review? merge can takes place once #13897 can be merged

if a PR is depending on another one, you can use stacked PRs nowadays in github. Have a look.

@rajiv-jain-netapp

Copy link
Copy Markdown
Contributor

@winterhazel @nvazquez @DaanHoogland can we prioritize this review? merge can takes place once #13897 can be merged

if a PR is depending on another one, you can use stacked PRs nowadays in github. Have a look.

for review point of view, no dependencies @DaanHoogland

@blueorangutan

Copy link
Copy Markdown

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 19771

@Damans227

Copy link
Copy Markdown
Collaborator

@piyush5netapp this looks good on the code side. can you test it on a lab with an existing ontap iscsi pool, upgrade, then create and attach a volume on it and post what you saw?

@Damans227 Damans227 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks @piyush5netapp, upgrade fix looks right. CLGTM

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants